﻿<?xml version="1.0" encoding="utf-8"?>
<Dsl xmlns:dm0="http://schemas.microsoft.com/VisualStudio/2008/DslTools/Core" dslVersion="1.0.0.0" Id="23676bde-f1a5-4816-af6a-899c74540ca4" Description="Configuration of the editors for a specific concept" Name="EditorConfiguration" DisplayName="EditorConfiguration" Namespace="DslEditorPowerToy.Languages.EditorConfiguration" MinorVersion="2" ProductName="DEPT" CompanyName="ClickAP" PackageGuid="b23687af-c75f-4abf-9c18-262fe858b7da" PackageNamespace="DslEditorPowerToy.Languages.EditorConfiguration" xmlns="http://schemas.microsoft.com/VisualStudio/2005/DslTools/DslDefinitionModel">
  <Notes>/* **********************************************************************************
*
* Copyright (c) Microsoft Corporation. All rights reserved.
*
* This source code is subject to terms and conditions of the Shared Source License
* for DSL Editor PowerToy. A copy of the license can be found in the License.htm file
* at the root of this distribution. If you can not locate the Shared Source License
* for DSL Editor PowerToy, please obtain a copy from: http://www.codeplex.com/dsltreegrideditor/Project/License.aspx.
* By using this source code in any fashion, you are agreeing to be bound by
* the terms of the Shared Source License for DSL Editor PowerToy.
*
* You must not remove this notice, or any other, from this software.
*
* **********************************************************************************/</Notes>
  <Classes>
    <DomainClass Id="583fa7ef-ba49-4065-9996-994872fc09fe" Description="The domain of the DSL" Name="DslDomain" DisplayName="DSL" Namespace="DslEditorPowerToy.Languages.EditorConfiguration">
      <Properties>
        <DomainProperty Id="c3363f89-60f0-45f5-8eee-490b7bd4db20" Description="The location to the bitmap (*.bmp) file containing the bitmaps for the toolwindow" Name="ToolWindowBitmapsFile" DisplayName="Tool Window Bitmaps File" DefaultValue="DslEditorsToolWindowBitmaps.bmp" Category="ToolWindow Appearance">
          <Attributes>
            <ClrAttribute Name="System.ComponentModel.Editor">
              <Parameters>
                <AttributeParameter Value="typeof(DslEditorPowerToy.ComponentModel.Design.ImageBrowserEditor)" />
                <AttributeParameter Value="typeof(System.Drawing.Design.UITypeEditor)" />
              </Parameters>
            </ClrAttribute>
          </Attributes>
          <Type>
            <ExternalTypeMoniker Name="/System/String" />
          </Type>
        </DomainProperty>
        <DomainProperty Id="b4f162a7-2327-48a9-90dd-24000aa22847" Description="The title for the toolwindow. The placeholder '{DslName}' (if present) will be automatically replaced at runtime with the name of the DSL language." Name="ToolWindowTitle" DisplayName="Tool Window Title" DefaultValue="{DslName} Details" Category="ToolWindow Appearance">
          <Type>
            <ExternalTypeMoniker Name="/System/String" />
          </Type>
        </DomainProperty>
        <DomainProperty Id="4e8dd068-a1bb-42a5-bc62-f7747eb3f5d8" Description="The style of navigation controls" Name="NavigationStyle" DisplayName="Navigation Style" DefaultValue="Vertical" Category="Appearance">
          <Type>
            <ExternalTypeMoniker Name="/DslEditorPowerToy.Controls/NavigationOrientationStyle" />
          </Type>
        </DomainProperty>
        <DomainProperty Id="e3485e1d-d45a-4a03-bbf5-9bcf8f2588a5" Description="Where to host the DSL editors. Note. if this value is 'Designer', then you must have configured a CustomEditor in your DSL for this to work." Name="HostingStyle" DisplayName="Hosting Style" DefaultValue="ToolWindow" Category="Appearance">
          <Type>
            <ExternalTypeMoniker Name="EditorHostStyle" />
          </Type>
        </DomainProperty>
      </Properties>
      <ElementMergeDirectives>
        <ElementMergeDirective>
          <Index>
            <DomainClassMoniker Name="DslEditor" />
          </Index>
          <LinkCreationPaths>
            <DomainPath>DslDomainHasDslEditors.DslEditors</DomainPath>
          </LinkCreationPaths>
        </ElementMergeDirective>
      </ElementMergeDirectives>
    </DomainClass>
    <DomainClass Id="ceb40b68-25fc-432b-8a61-67f246c907fc" Description="An editor for the DSL" Name="DslEditor" DisplayName="DSL Editor" Namespace="DslEditorPowerToy.Languages.EditorConfiguration">
      <Properties>
        <DomainProperty Id="ce4ddf98-b329-41b6-90c3-4e344aecfce5" Description="The caption for the editor" Name="Caption" DisplayName="Caption" DefaultValue="My Custom Details" Category="Appearance">
          <Type>
            <ExternalTypeMoniker Name="/System/String" />
          </Type>
        </DomainProperty>
        <DomainProperty Id="796eb067-5625-4982-9e25-299393d6cc47" Description="The type of the custom control to host in the editor" Name="EditorControl" DisplayName="Editor Control" DefaultValue="DslEditorPowerToy.Controls.Editors.SelectionTrackerEditor" Category="Appearance">
          <Attributes>
            <ClrAttribute Name="System.ComponentModel.Editor">
              <Parameters>
                <AttributeParameter Value="typeof(DslEditorPowerToy.ComponentModel.Design.ControlBrowserEditor)" />
                <AttributeParameter Value="typeof(System.Drawing.Design.UITypeEditor)" />
              </Parameters>
            </ClrAttribute>
            <ClrAttribute Name="DslEditorPowerToy.ComponentModel.Design.ClassBrowserAssemblyExclusion">
              <Parameters>
                <AttributeParameter Value="&quot;DslEditorPowerToy.Controls.Common;DslEditorPowerToy.Controls.Languages;Microsoft.VisualStudio.Modeling.Sdk;Microsoft.VisualStudio.Modeling.Sdk.Diagrams;Microsoft.VisualStudio.Modeling.Sdk.Shell;Microsoft.VisualStudio.Shell;Microsoft.VisualStudio.TextTemplating.VSHost;&quot;" />
              </Parameters>
            </ClrAttribute>
          </Attributes>
          <Type>
            <ExternalTypeMoniker Name="/System/String" />
          </Type>
        </DomainProperty>
        <DomainProperty Id="9c17bd63-f51b-4aa3-8261-a64a02d40a71" Description="The location to the bitmap (*.bmp) file containing the bitmap to represent the editor" Name="Icon" DisplayName="Icon" Category="Appearance">
          <Attributes>
            <ClrAttribute Name="System.ComponentModel.Editor">
              <Parameters>
                <AttributeParameter Value="typeof(DslEditorPowerToy.ComponentModel.Design.ImageBrowserEditor)" />
                <AttributeParameter Value="typeof(System.Drawing.Design.UITypeEditor)" />
              </Parameters>
            </ClrAttribute>
          </Attributes>
          <Type>
            <ExternalTypeMoniker Name="/System/String" />
          </Type>
        </DomainProperty>
        <DomainProperty Id="b0d648cb-ca4d-47a3-9cae-3366490747b7" Description="Whether this editor is currently active in the configuration" Name="Active" DisplayName="Active" DefaultValue="true" Category="Code Generation">
          <Type>
            <ExternalTypeMoniker Name="/System/Boolean" />
          </Type>
        </DomainProperty>
        <DomainProperty Id="9acb8b28-2549-4988-8b9b-bcb4dd78ec08" Description="The name of the generated class representing this editor" Name="ClassName" DisplayName="Class Name" Kind="Calculated" Category="Code Generation" IsUIReadOnly="true">
          <Type>
            <ExternalTypeMoniker Name="/System/String" />
          </Type>
        </DomainProperty>
        <DomainProperty Id="0cb50f3b-8bcf-474f-95d9-e8fa2e4ac424" Description="The unique identifier of this editor" Name="EditorId" DisplayName="Editor Id" Kind="Calculated" Category="Code Generation" IsUIReadOnly="true">
          <Type>
            <ExternalTypeMoniker Name="/System/String" />
          </Type>
        </DomainProperty>
      </Properties>
    </DomainClass>
  </Classes>
  <Relationships>
    <DomainRelationship Id="1617bc4f-c691-43d2-97c2-02a091bf698c" Description="Description for DslEditorPowerToy.Languages.EditorConfiguration.DslDomainHasDslEditors" Name="DslDomainHasDslEditors" DisplayName="Dsl Domain Has Dsl Editors" Namespace="DslEditorPowerToy.Languages.EditorConfiguration" IsEmbedding="true">
      <Source>
        <DomainRole Id="1887b380-4dec-45c0-8ac7-35bddfb3b550" Description="Description for DslEditorPowerToy.Languages.EditorConfiguration.DslDomainHasDslEditors.DslDomain" Name="DslDomain" DisplayName="DSL Domain" PropertyName="DslEditors" PropertyDisplayName="DSL Editors">
          <RolePlayer>
            <DomainClassMoniker Name="DslDomain" />
          </RolePlayer>
        </DomainRole>
      </Source>
      <Target>
        <DomainRole Id="168bd8a7-01b3-49fc-b205-94b95343adfb" Description="Description for DslEditorPowerToy.Languages.EditorConfiguration.DslDomainHasDslEditors.DslEditor" Name="DslEditor" DisplayName="DSL Editor" PropertyName="DslDomain" Multiplicity="One" PropagatesDelete="true" PropagatesCopy="PropagatesCopyToLinkAndOppositeRolePlayer" PropertyDisplayName="DSL Domain">
          <RolePlayer>
            <DomainClassMoniker Name="DslEditor" />
          </RolePlayer>
        </DomainRole>
      </Target>
    </DomainRelationship>
  </Relationships>
  <Types>
    <ExternalType Name="DateTime" Namespace="System" />
    <ExternalType Name="String" Namespace="System" />
    <ExternalType Name="Int16" Namespace="System" />
    <ExternalType Name="Int32" Namespace="System" />
    <ExternalType Name="Int64" Namespace="System" />
    <ExternalType Name="UInt16" Namespace="System" />
    <ExternalType Name="UInt32" Namespace="System" />
    <ExternalType Name="UInt64" Namespace="System" />
    <ExternalType Name="SByte" Namespace="System" />
    <ExternalType Name="Byte" Namespace="System" />
    <ExternalType Name="Double" Namespace="System" />
    <ExternalType Name="Single" Namespace="System" />
    <ExternalType Name="Guid" Namespace="System" />
    <ExternalType Name="Boolean" Namespace="System" />
    <ExternalType Name="Char" Namespace="System" />
    <ExternalType Name="NavigationOrientationStyle" Namespace="DslEditorPowerToy.Controls" />
    <ExternalType Name="EditorHostStyle" Namespace="DslEditorPowerToy.Languages.EditorConfiguration" />
  </Types>
  <Shapes>
    <GeometryShape Id="ba38df2a-98ba-4a9a-bba9-673615f64d66" Description="Representation of a DSL editor" Name="DslEditorShape" DisplayName="Dsl Editor Shape" Namespace="DslEditorPowerToy.Languages.EditorConfiguration" GeneratesDoubleDerived="true" FixedTooltipText="Dsl Editor Shape" TextColor="White" FillColor="ActiveCaption" OutlineColor="LightGray" InitialWidth="2.5" InitialHeight="0.75" OutlineThickness="0.02" FillGradientMode="ForwardDiagonal" Geometry="Rectangle">
      <ShapeHasDecorators Position="InnerTopLeft" HorizontalOffset="0.25" VerticalOffset="0.025">
        <TextDecorator Name="Caption" DisplayName="Caption" DefaultText="Caption" FontStyle="Bold" FontSize="10" />
      </ShapeHasDecorators>
      <ShapeHasDecorators Position="InnerTopLeft" HorizontalOffset="0.25" VerticalOffset="0.2">
        <TextDecorator Name="Descriptor" DisplayName="DSL Editor" DefaultText="DSL Editor" FontStyle="Italic" FontSize="7" />
      </ShapeHasDecorators>
      <ShapeHasDecorators Position="InnerTopLeft" HorizontalOffset="0.05" VerticalOffset="0.025">
        <IconDecorator Name="Icon" DisplayName="Icon" DefaultIcon="Resources\DslEditorShape.bmp" />
      </ShapeHasDecorators>
    </GeometryShape>
  </Shapes>
  <XmlSerializationBehavior Name="EditorConfigurationSerializationBehavior" Namespace="DslEditorPowerToy.Languages.EditorConfiguration">
    <ClassData>
      <XmlClassData TypeName="DslDomain" MonikerAttributeName="" SerializeId="true" MonikerElementName="dslDomainMoniker" ElementName="dslDomain" MonikerTypeName="DslDomainMoniker">
        <DomainClassMoniker Name="DslDomain" />
        <ElementData>
          <XmlPropertyData XmlName="toolWindowBitmapsFile">
            <DomainPropertyMoniker Name="DslDomain/ToolWindowBitmapsFile" />
          </XmlPropertyData>
          <XmlPropertyData XmlName="toolWindowTitle">
            <DomainPropertyMoniker Name="DslDomain/ToolWindowTitle" />
          </XmlPropertyData>
          <XmlPropertyData XmlName="navigationStyle">
            <DomainPropertyMoniker Name="DslDomain/NavigationStyle" />
          </XmlPropertyData>
          <XmlRelationshipData RoleElementName="dslEditors">
            <DomainRelationshipMoniker Name="DslDomainHasDslEditors" />
          </XmlRelationshipData>
          <XmlPropertyData XmlName="hostingStyle">
            <DomainPropertyMoniker Name="DslDomain/HostingStyle" />
          </XmlPropertyData>
        </ElementData>
      </XmlClassData>
      <XmlClassData TypeName="DslEditor" MonikerAttributeName="" SerializeId="true" MonikerElementName="dslEditorMoniker" ElementName="dslEditor" MonikerTypeName="DslEditorMoniker">
        <DomainClassMoniker Name="DslEditor" />
        <ElementData>
          <XmlPropertyData XmlName="caption">
            <DomainPropertyMoniker Name="DslEditor/Caption" />
          </XmlPropertyData>
          <XmlPropertyData XmlName="editorControl">
            <DomainPropertyMoniker Name="DslEditor/EditorControl" />
          </XmlPropertyData>
          <XmlPropertyData XmlName="icon">
            <DomainPropertyMoniker Name="DslEditor/Icon" />
          </XmlPropertyData>
          <XmlPropertyData XmlName="active">
            <DomainPropertyMoniker Name="DslEditor/Active" />
          </XmlPropertyData>
          <XmlPropertyData XmlName="className" Representation="Ignore">
            <DomainPropertyMoniker Name="DslEditor/ClassName" />
          </XmlPropertyData>
          <XmlPropertyData XmlName="editorId" Representation="Ignore">
            <DomainPropertyMoniker Name="DslEditor/EditorId" />
          </XmlPropertyData>
        </ElementData>
      </XmlClassData>
      <XmlClassData TypeName="DslEditorShape" MonikerAttributeName="" MonikerElementName="dslEditorShapeMoniker" ElementName="dslEditorShape" MonikerTypeName="DslEditorShapeMoniker">
        <GeometryShapeMoniker Name="DslEditorShape" />
      </XmlClassData>
      <XmlClassData TypeName="EditorConfigurationDiagram" MonikerAttributeName="" MonikerElementName="minimalLanguageDiagramMoniker" ElementName="minimalLanguageDiagram" MonikerTypeName="EditorConfigurationDiagramMoniker">
        <DiagramMoniker Name="EditorConfigurationDiagram" />
      </XmlClassData>
      <XmlClassData TypeName="DslDomainHasDslEditors" MonikerAttributeName="" MonikerElementName="dslDomainHasDslEditorsMoniker" ElementName="dslDomainHasDslEditors" MonikerTypeName="DslDomainHasDslEditorsMoniker">
        <DomainRelationshipMoniker Name="DslDomainHasDslEditors" />
      </XmlClassData>
    </ClassData>
  </XmlSerializationBehavior>
  <ExplorerBehavior Name="EditorConfigurationExplorer">
    <CustomNodeSettings>
      <ExplorerNodeSettings IconToDisplay="Resources\DslEditorShape.bmp">
        <Class>
          <DomainClassMoniker Name="DslEditor" />
        </Class>
        <PropertyDisplayed>
          <PropertyPath>
            <DomainPropertyMoniker Name="DslEditor/Caption" />
          </PropertyPath>
        </PropertyDisplayed>
      </ExplorerNodeSettings>
      <ExplorerNodeSettings IconToDisplay="Resources\DslDomainShape.bmp">
        <Class>
          <DomainClassMoniker Name="DslDomain" />
        </Class>
      </ExplorerNodeSettings>
    </CustomNodeSettings>
  </ExplorerBehavior>
  <Diagram Id="62476cd7-a08a-4e2e-bebd-1497f651ae26" Description="Description for DslEditorPowerToy.Languages.EditorConfiguration.EditorConfigurationDiagram" Name="EditorConfigurationDiagram" DisplayName="View Configration Diagram" Namespace="DslEditorPowerToy.Languages.EditorConfiguration" GeneratesDoubleDerived="true" FillColor="Silver">
    <Class>
      <DomainClassMoniker Name="DslDomain" />
    </Class>
    <ShapeMaps>
      <ShapeMap>
        <DomainClassMoniker Name="DslEditor" />
        <ParentElementPath>
          <DomainPath>DslDomainHasDslEditors.DslDomain/!DslDomain</DomainPath>
        </ParentElementPath>
        <DecoratorMap>
          <TextDecoratorMoniker Name="DslEditorShape/Caption" />
          <PropertyDisplayed>
            <PropertyPath>
              <DomainPropertyMoniker Name="DslEditor/Caption" />
            </PropertyPath>
          </PropertyDisplayed>
        </DecoratorMap>
        <GeometryShapeMoniker Name="DslEditorShape" />
      </ShapeMap>
    </ShapeMaps>
  </Diagram>
  <Designer FileExtension="deptec" EditorGuid="3382713d-4993-4e79-b21e-b14404db2183">
    <RootClass>
      <DomainClassMoniker Name="DslDomain" />
    </RootClass>
    <XmlSerializationDefinition CustomPostLoad="false">
      <XmlSerializationBehaviorMoniker Name="EditorConfigurationSerializationBehavior" />
    </XmlSerializationDefinition>
    <ToolboxTab TabText="DSL Editor Configuration">
      <ElementTool Name="DslEditor" ToolboxIcon="Resources\DslEditorShape.bmp" Caption="A DSL Editor" Tooltip="Creates a new editor for your DSL" HelpKeyword="">
        <DomainClassMoniker Name="DslEditor" />
      </ElementTool>
    </ToolboxTab>
    <Validation UsesMenu="true" UsesOpen="false" UsesSave="true" UsesLoad="false" />
    <DiagramMoniker Name="EditorConfigurationDiagram" />
  </Designer>
  <Explorer ExplorerGuid="4eddd4ea-155c-4b33-8f45-6893f49813d4" Title="DSL Editor Configuration Explorer">
    <ExplorerBehaviorMoniker Name="EditorConfiguration/EditorConfigurationExplorer" />
  </Explorer>
</Dsl>